/******************************************************************************
* 文件名称: stdarg.h
* 内容摘要: 标准参数头文件
* 创建者の: 孔佳伟
* 个人主页: https://gitee.com/openes
* 修改记录: 
******************************************************************************/

#ifndef __STDARG_H_
#define __STDARG_H_

#ifdef __cplusplus
extern "C" {
#endif

#include <common.h>


typedef U08 * va_list;
#define _INTSIZEOF(n)       ((sizeof(n) + sizeof(U32) - 1) & ~(sizeof(U32) - 1))
#define va_start(ap, v)     (ap = (va_list)&v + _INTSIZEOF(v))
#define va_arg(ap, type)    (*(type *)((ap += _INTSIZEOF(type)) - _INTSIZEOF(type)))
#define va_end(ap)          (ap = (va_list)0)


#ifdef __cplusplus
}
#endif

#endif
